package it.asvp.asvp_portal.service.services;

import it.asvp.asvp_portal.data.entity.member.Member;
import it.asvp.asvp_portal.data.entity.member.MemberAccount;

import java.util.List;

import org.springframework.security.core.userdetails.UserDetails;

public interface MemberService {
	
	public void createMember(UserDetails userDetails,Member transientMember,MemberAccount transientMemberAccount) throws Exception;
	
	public void updateMember(UserDetails userDetails,Long idMemberToUpdate,Member newMemberData) throws Exception;
	
	public void deleteMember(UserDetails userDetails,Member persistentMember) throws Exception;
	
	public List<Member> getAllMembers() throws Exception;
	
	public Member getMemberById(Long id) throws Exception;
	
	public Member getMemberByEmail(String email) throws Exception;
	
}
